package com.dms.modules.product.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dms.modules.product.dto.ProductSpecDTO;
import com.dms.modules.product.entity.ProductSpecTemplate;

import java.util.List;

/**
 * 商品规格模板服务接口
 */
public interface ProductSpecTemplateService extends IService<ProductSpecTemplate> {

    /**
     * 保存规格模板
     *
     * @param specDTO 规格模板信息
     * @return 规格模板ID
     */
    Long saveSpecTemplate(ProductSpecDTO specDTO);

    /**
     * 更新规格模板
     *
     * @param specDTO 规格模板信息
     */
    void updateSpecTemplate(ProductSpecDTO specDTO);

    /**
     * 根据分类ID获取规格模板列表
     *
     * @param categoryId 分类ID
     * @return 规格模板列表
     */
    List<ProductSpecTemplate> listByCategoryId(Long categoryId);

    /**
     * 根据商家ID获取规格模板列表
     *
     * @param merchantId 商家ID
     * @param categoryId 分类ID（可选）
     * @return 规格模板列表
     */
    List<ProductSpecTemplate> listByMerchantId(Long merchantId, Long categoryId);

    /**
     * 删除规格模板
     *
     * @param id 规格模板ID
     */
    void deleteSpecTemplate(Long id);
} 